home *** CD-ROM | disk | FTP | other *** search
/ PC Graphics Unleashed / PC Graphics Unleashed.iso / ch08 / clip.c next >
C/C++ Source or Header  |  1994-09-15  |  1KB  |  46 lines

  1. // CLIP.C
  2. #include <graphics.h>
  3. #include <stdlib.h>
  4. #include <stdio.h>
  5. #include <conio.h>
  6.  
  7. #define CLIP_ON  1
  8. #define CLIP_OFF 0
  9.  
  10. void main(void) {
  11. /* request auto detection */
  12. int gdriver = DETECT, gmode, errorcode;
  13.  
  14. /* initialize graphics and local variables */
  15. initgraph(&gdriver, &gmode, "");
  16.  
  17. /* read result of initialization */
  18.     errorcode = graphresult();
  19.     if (errorcode != grOk) {
  20.        printf("Graphics error: %s\n", grapherrormsg(errorcode));
  21.        printf("Press any key to halt:");
  22.        getch();
  23.        exit(1); /* terminate with an error code */
  24.     }
  25.  
  26.     setcolor(getmaxcolor());
  27.     /* draw box around viewport #1 */
  28.     rectangle(0,0,100,100);
  29.     /* draw box around viewport #2 */
  30.     rectangle(200,0,300,100);
  31.  
  32.     /* set viewport #1 */
  33.     setviewport(0,0,100,100,CLIP_OFF);
  34.     /* draw a circle inside it */
  35.     circle(60,50,50);
  36.  
  37.     /* set viewport #2 */
  38.     setviewport(200, 0, 300, 100, CLIP_ON);
  39.     /* draw a circle inside it */
  40.     circle(60,50,50);
  41.     getch();
  42.  
  43.     closegraph();
  44. }
  45.  
  46.